#ifndef LIFECHECKTEST_H
#define LIFECHECKTEST_H
#include "LifeChecker.h"

class LifeCheckerTest{
  public:
    LifeCheckerTest();
    ~LifeCheckerTest();
    bool getCurXTest();
    bool getCurYTest();
    bool setCurXTest();
    bool setCurYTest();
    bool lifeUpTest();
    bool lifeDownTest();
    bool lifeRightTest();
    bool lifeLeftTest();
    bool lifeUpRightTest();
    bool lifeUpLeftTest();
    bool lifeDownRightTest();
    bool lifeDownLeftTest();
    bool aliveTest();

  private:
    LifeChecker * testChecker;

    //char represents the axis (X/Y), int is number checking
    bool getCurTestError(char, int);
    bool setCurTestError(char, int);

    //int represents number mapping
    //012
    //3/4
    //567
    //bool represents check value
    bool lifeDirectionTestError(int, bool);
    bool aliveTestError(bool);
};

#endif
